File:  of Disk: Disks/Working/Build-11-03-07
(Source file text) 

(IX,JX,1)
	IF (DAMAGE(8).LT.0) GOTO 2470
	ARRAY(IX,JX,2) = ARRAY(IX,JX,1)
	GOTO 2470
2460	LONG(JX-QUAD2+2) = 0
2470	CONTINUE
	WRITE (4,2472) LONG(1),LONG(2),LONG(3)
2472	FORMAT (1X,':',I4,' :',I4,' :',I4,' :')
	WRITE (4,2380)
2500	CONTINUE
	GOTO HELL
C	**************************************************
C	THIS IS THE DAMAGE CONTROL REPORT CODE
C	**************************************************
3560	IF (DAMAGE(6).GE.0) GOTO 3580
	WRITE (4,3570)
3570	FORMAT (1X,'DAMAGE CONTROL REPORT IS NOT AVAILABLE')
	GOTO HELL
3580	WRITE (4,3590) DAMAGE(1),DAMAGE(2),DAMAGE(3),DAMAGE(4),
     1	DAMAGE(5),DAMAGE(6),DAMAGE(7),DAMAGE(8)
3590	FORMAT (/,1X,'DAMAGE CONTROL REPORT:',//,
     1  1X,'DEVICE                       STATE OF REPAIR',/,
     2  1X,'WARP DRIVE',T27,F16.2,/,1X,'S.R. SENSORS',T27,F16.2,/,
     3  1X,'L.R. SENSORS',T27,F16.2,/,1X,'PHASER CONTROL',T27,F16.2,/,
     4  1X,'PHOTON TUBES',T27,F16.2,/,1X,'DAMAGE CONTROL',T27,F16.2,/,
     5  1X,'SHIELD CONTROL',T27,F16.2,/,1X,'COMPUTER',T27,F16.2,/)
	GOTO HELL
C	**************************************************
C	THIS IS THE SHIELD CONTROL CODE
C	**************************************************
3460	IF (DAMAGE(7).GE.0) GOTO 3480
	WRITE (4,3470)
3470	FORMAT (1X,'SHIELD CONTROL IS NON-OPERATIONAL')
	GOTO HELL
3480	TEMP=ENERGY+SHIELD
	WRITE (4,3490) TEMP
3490	FORMAT (1X,'ENERGY AVAILABLE = ',I5,/,
     1  4X,'NUMBER OF UNITS TO SHIELDS:?',$)
	READ (4,1290) ITEMP
	IF (ITEMP.LT.0) GOTO HELL
	IF (ENERGY+SHIELD-ITEMP.LT.0) GOTO 3480
	ENERGY = ENERGY+SHIELD-ITEMP
	SHIELD = ITEMP
	GOTO HELL
C	**************************************************
C	LIBRARY COMPUTER CODE
C	**************************************************
4630	IF (DAMAGE(8).GE.0) GOTO 4660
	WRITE (4,4640)
4640	FORMAT (1X,'COMPUTER DISABLED')
	GOTO HELL
4660	WRITE (4,4662)
4662	FORMAT(1X,'COMPUTER ACTIVE AND AWAITING COMMAND:?',$)
	READ (4,1290) ITEMP
	IF (ITEMP.EQ.0) GOTO 4740
	IF (ITEMP.EQ.1) GOTO 4830
	IF (ITEMP.EQ.2) GOTO 4880
	WRITE (4,4690)
4690	FORMAT (1X,'FUNCTIONS AVIALABLE FROM COMPUTER',/,4X,
     1  '0 = CUMULATIVE GALACTIC RECORD',/,4X,
     2  '1 = STATUS REPORT',/,4X,'2 = PHOTON TORPEDO DATA')
	GOTO 4660
C	CUMULATIVE GALACTIC RECORD CODE BEGINS HERE
4740	WRITE (4,4750)
4750	FORMAT (1X,'COMPUTER RECORD OF GALAXY FOR ALL LONG RANGE 
     1  SENSOR SCANS',/,6X,'1     2     3     4     5
     2       6     7     8')
	WRITE (4,4770)
4770	FORMAT(4X,'----- ----- ----- ----- ----- ----- ----- -----')
	DO 4810 I=1,8
	WRITE (4,4795) I,ARRAY(I,1,2),ARRAY(I,2,2),ARRAY(I,3,2),
     1  ARRAY(I,4,2),ARRAY(I,5,2),ARRAY(I,6,2),ARRAY(I,7,2),ARRAY(I,8,2)
4795	FORMAT(1X,I2,T5,I3,T11,I3,T17,I3,T23,I3,T29,I3,T35,I3,T41,I3,
     1  T47,I3)
	WRITE (4,4770)
4810	CONTINUE
	GOTO HELL
C	STATUS REPORT CODE BEGINS HERE
4830	TEMP=TIME0+DATLFT-TIME
	WRITE (4,4840) TKLING,TEMP,TBASES
4840	FORMAT (4X,'STATUS REPORT',/,1X,
     1  'NUMBER OF KLINGONS LEFT = ',I3,/,1X,
     2  'NUMBER OF STARDATES LEFT = ',F7.1,/,1X,
     3  'NUMBER OF STARBASES LEFT = ',I3)
C	TRANSFER TO DAMAGE CONTROL REPORT CODE
	GOTO 3560
C	LIBRARY PHOTON TORPEDO DATA CODE BEGINS HERE
4880	PH8 = 0
	DO 5260 I=1,3
	IF (KLINST(I,3).LE.0) GOTO 5260
	PC1 = SECT1
	PA = SECT2
	PW1 = KLINST(I,1)
	PX = KLINST(I,2)
	GOTO 5010
4970	WRITE (4,4972)QUAD1,QUAD2,SECT1,SECT2
4972	FORMAT(1X,'YOU ARE AT QUADRANT (',I3,' ,',I3,' ) SECTOR (',
     1  I3,' ,',I3,' )',/,1X,'SHIP AND TARGET COORDINATES ARE:?',$)
	READ (4,4990)PC1,PA,PW1,PX
4990	FORMAT(4F16.0)
5010	PX = PX-PA
	PA = PC1-PW1
	IF (PX.LT.0) GOTO 5130
	IF (PA.LT.0) GOTO 5190
	IF (PX.GT.0) GOTO 5070
	IF (PA.EQ.0) GOTO 5150
5070	PC1 = 1.
5080	IF (ABS(PA).LE.ABS(PX)) GOTO 5110
	TEMP = PC1+(((ABS(PA)-ABS(PX))+ABS(PA))/ABS(PA))
	WRITE (4,5090)TEMP
5090	FORMAT(1X,'DIRECTION = ',G16.6)
	GOTO 5240
5110	TEMP=PC1+(ABS(PA)/ABS(PX))
	WRITE (4,5090) TEMP
	GOTO 5240
5130	IF (PA.GT.0) GOTO 5170
	IF (PX.GT.0) GOTO 5190
5150	PC1 = 5.
	GOTO 5080
5170	PC1 = 3.
	GOTO 5200
5190	PC1 = 7.
5200	IF (ABS(PA).GE.ABS(PX)) GOTO 5230
	TEMP=PC1+(((ABS(PX)-ABS(PA))+ABS(PX))/ABS(PX))
	WRITE (4,5090) TEMP
	GOTO 5240
5230	TEMP=PC1+(ABS(PX)/ABS(PA))
	WRITE (4,5090) TEMP
5240	TEMP=SQRT(PX**2+PA**2)
	WRITE (4,5242) TEMP
5242	FORMAT(1X,'DISTANCE = ',G16.6)
	IF (PH8.EQ.1) GOTO HELL
5260	CONTINUE
	PH8 = 0.
5280	WRITE (4,5282)
5282	FORMAT(1X,'DO YOU WANT TO USE THE CALCULATOR?',$)
	READ (4,40) ANSWER
	IF (ANSWER.EQ.YES) GOTO 4970
	IF (ANSWER.EQ.NO) GOTO HELL
	WRITE (4,50)
	GOTO 5280
C	***********************************************
C	THIS IS COMMAND 69 - CHEAT/TEST/DEBUG
C	***********************************************
10000	WRITE (4,10010) ARRAY
10010	FORMAT(8I5)
	GOTO HELL
20000	WRITE (4,20010)
20010	FORMAT (6X,'INSTRUCTIONS',//,
     1  1X,'THE GALAXY IS DIVIDED INTO AN 8,8 QUADRANT GRID',/,
     2  1X,'WHICH IS IN TURN DIVIDED INTO AN 8,8 SECTOR GRID.',//,
     3  1X,'THE CAST OF CHARACTERS IS AS FOLLOWS:',/,
     4  1X,'<*> = ENTERPRISE',/,1X,'+++ = KLINGON',/,1X,'>!< =
     5   STARBASE',/)
	WRITE (4,20011)
20011   FORMAT(2X,'*  = STAR',/,1X,'COMMAND 0 = WARP ENGINE CONTROL:',/,
     1  3X,'COURSE IS IN A CIRCULAR NUMERICAL      4  3  2',/,
     2  3X,'VECTOR ARRANGEMENT AS SHOWN.            \ ^ /',/,
     3  3X,'INTEGER AND REAL VALUES MAY BE           \^/',/,
     4  3X,'USED.  THEREFORE COURSE 1.5 IS        5 ----- 1')
	WRITE (4,20020)
20020	FORMAT(3X,'HALF WAY BETWEEN 1 AND 2.                /!\',/,
     1  43X,'/ ! \',/,
     2  3X,'A VECTOR OF 9 IS UNDEFINED, BUT        6  7  8',/,
     3  3X,'VALUES MAY APPROACH 9.',17X,'COURSE',//,
     4  3X,'ONE WARP FACTOR IS THE SIZE OF',/,
     5  3X,'ONE QUADRANT.  THEREFORE TO GET',/)
	WRITE (4,20021)
20021   FORMAT(3X,'FROM QUADRANT 6,5 TO 5,5 YOU WOULD',/,
     1  3X,'USE COURSE 3. WARP FACTOR 1.',//,
     2  1X,'COMMAND 1 = SHORT RANGE SENSOR SCAN',/,
     3  3X,'PRINTS THE QUADRANT YOU ARE CURRENTLY IN.  INCLUDING')
	WRITE (4,20030)
20030	FORMAT(3X,'STARS, KLINGONS, STARBASES, AND THE ENTERPRISE.
     1   ALONG',/,
     2  3X,'WITH OTHER PERTINATE INFORMATION.',//,
     3  1X,'COMMAND 2 = LONG RANGE SENSOR SCAN',/,
     4  3X,'SHOWS CONDITIONS IN SPACE FOR ONE QUADRANT ON EACH SIDE',/,
     5  3X,'OF THE ENTERPRISE IN THE MIDDLE OF THE SCAN. THE SCAN')
	WRITE (4,20031)
20031   FORMAT(3X,'IS CODED IN THE FORM "KBS", WHERE K IS THE NUMBER',/,
     1  3X,'OF KLINGONS, B IS THE NUMBER OF STARBASES, AND S IS',/,
     2  3X,'THE NUMBER OF STARS.',//,
     3  1X,'COMMAND 3 = PHASER CONTROL',/,
     4  3X,'ALLOWS YOU TO DESTROY THE KLINGONS BY HITTING THEM WITH')
	WRITE (4,20040)
20040	FORMAT(3X,'SUITABLY LARGE NUMBERS OF ENERGY UNITS TO DEPLETE
     1   THEIR',/,
     2  3X,'SHIELD POWER.  KEEP IN MIND THAT WHEN YOU SHOOT AT THEM.',/,
     3  3X,'THEY GONNA SHOOT AT YOU, TOO!',//,
     4  1X,'COMMAND 4 = PHOTON TORPEDO CONTROL',/,
     5  3X,'COURSE IS THE SAME AS USED IN WARP ENGINE CONTROL')
	WRITE (4,20041)
20041   FORMAT(3X,'IF YOU HIT THE KLINGON, HE IS DESTROYED AND CANNOT',
     1  /,3X,'FIRE BACK AT YOU.  IF YOU MISS, YOU ARE SUBJECT TO HIS',
     2  /,3X,'PHASER FIRE.',//,
     3  3X,'NOTE:  THE LIBRARY COMPUTER (COMMAND 7) HAS AN OPTION',/,
     4  3X,'TO COMPUTE TORPEDO TRAJECTORY FOR YOU (OPTION 2).',/)
	WRITE (4,20050)
20050	FORMAT(1X,'COMMAND 5 = SHIELD CONTROL',/,
     1  3X,'DEFINES NUMBER OF ENERGY UNITS TO BE ASSIGNED TO SHIELDS.',
     2  /,3X,'ENERGY IS TAKEN FROM TOTAL SHIP''S ENERGY.',/,
     3  3X,'NOTE:  TOTAL ENERGY INCLUDES SHIELD ENERGY.',//,
     4  1X,'COMMAND 6 = DAMAGE CONTROL REPORT',/,
     5  3X,'GIVES STATE OF REPAIRS OF ALL DEVICES. A STATE OF REPAIR')
	WRITE (4,20051)
20051   FORMAT(/,3X,'LESS THAN ZERO SHOWS THAT THE DEVICE IS ',/,
     1  3X,'TEMPORALLY DAMAGED.',//,
     2  1X,'COMMAND 7 = LIBRARY COMPUTER',/,
     3  3X,'THE LIBRARY COMPUTER CONTAINS THREE OPTIONS:')
	WRITE (4,20060)
20060	FORMAT(5X,'OPTION 0 = CUMULATIVE GALACTIC RECORD',/,
     1  7X,'WHICH SHOWS COMPUTER MEMORY OF THE RESULTS',/,
     2  7X,'OF ALL PREVIOUS LONG RANGE SENSOR SCANS.',/,
     3  5X,'OPTION 1 = STATUS REPORT',/,
     4  7X,'WHISH SHOWS NUMBER OF KLINGONS, STARBASES,',/,
     5  7X,'AND STARDATES LEFT.',/)
	WRITE (4,20061)
20061   FORMAT(5X,'OPTION 2 = PHOTON TORPEDO DATA',/,
     1  7X,'GIVES TRAJECTORY AND DISTANCE BETWEEN THE',/,
     2  7X,'ENTERPRISE AND ALL KLINGONS IN YOUR QUADRANT',/,
     3  7X,'IF YOU WISH TO USE THE COMPUTER''S CALCULATOR',/,
     4  7X,'TO AID NAVIGATION OR DOCKING THEN ENTER',/,
     5  7X,'COORDINATES (QUADRANT OR SECTOR)')
	WRITE (4,20062)
20062   FORMAT(7X,'OF SHIP AND TARGET - IN SOURCE,DESTINATION',/,
     1  7X,'FORMAT - EG...S,S,T,T',/)
	WRITE (4,20070)
20070	FORMAT (1X,'COMMAND 8 = BEGIN NEW CONTEST',/,
     1  3X,'STARTS PROGRAM OVER AGAIN WITH ALL NEW DATA.',/,
     2  3X,'USED TO CREATE MORE CHALLENGING SETUP - IE: MORE',/,
     3  3X,'KLINGONS AND FEWER STARBASES!',///)
	GOTO 100
	END